available. The second private key is kept a secret so that only you can know
of it.
A message encrypted using a public key can only be decrypted using a
private key, and a message encrypted using a private key can be decrypted
using a public key communication is ensured by the asymmetric key.
Over the Internet, asymmetric encryption is used in day-to-day
communication channels. ElGamal, RSA, DSA, Elliptic Curve Techniques,
and PK CS are popular asymmetric key encryption algorithms.
Block ciphers
A block at one time encrypts a fixed size of n-bits of data by an encryption
algorithm called a block cipher. The size of these blocks maybe 64, 128, or
25 6 bits. For example, a 64-bits of plaintext is taken by a 64-bits block
cipher and encrypts into 64-bits of ciphertext. Padding schemes come into
play when bits of plaintext is shorter than the block size.
The encryption algorithms used here are DES, Triple DES, AES, IDEA,
and Blowfish.
Stream ciphers
This is an encryption algorithm that encrypts 1 bit or 1 byte of plaintext at a
time. An infinite stream of pseudo-random bits is used as the key. Its
pseudo-random generator should be unpredictable, and the key should
never be reused for the stream cipher implementation to remain secure. To
approximate an idealized cipher called One-Time Pad, the stream ciphers
are designed.
“Perfect Secrecy” can be achieved by the one-time pad, which uses a purely
random key. It is immune to brute force attacks. The key used should be as
long or even larger than the plaintext, which is a problem with the one-time
pad. So, if you have a 600 MB video file that you would like to encrypt,
you need a key that is at least 4– 5 GB long.
The use of a one-time pad would be impractical for day-to-day public use
while very useful for top secret information or matters of national security.
You can achieve a strong level of security.
Figure 1.3 displays the types of encryption.